package com.fadadianqi.mall.product.model;

import com.fadadianqi.commons.BaseObject;

import java.util.Date;

/**
 * ItemSPU = Standard Product Unit （标准化产品单元），
 * SPU是商品信息聚合的最小单位，是一组可复用、易检索的标准化信息的集合，该集合描述了一个产品的特性。
 * 通俗点讲，属性值、特性相同的商品就可以称为一个SPU。
 * 例如，iphone4就是一个SPU，N97也是一个SPU，这个与商家无关，与颜色、款式、套餐也无关。
 *
 * @author aroot
 */
public class ItemSPU extends BaseObject {

    /**
     *
     */
    private static final long serialVersionUID = -2552796418035902586L;

    /**
     * 暂时沿用 {@link com.fadadianqi.goods.model.Brand#id} 主键
     */
    private String brandId;

    /**
     * 暂时沿用 {@link com.fadadianqi.goods.model.Category#id} 主键
     * 放弃物流系统的分类改用商城分类系统
     * spu对分类为1对多结构
     */
    //private String categoryId;

    /**
     * 暂时的冗余字段相当于{@link com.fadadianqi.goods.model.Goods#name}
     */
    private String name;

    private String displayName;

    /**
     * 记录商品的描述类型属性 采用json格式存储
     * 如商品电视详情
     * 品牌:长虹  尺寸:50吋
     */
    private String details;


    private String attrValsId; // 商品关键属性集合id
    private Date addTime;
    private Date updateTime;

    private Boolean isIndexed = Boolean.FALSE;

    public Boolean getIsIndexed() {
        return isIndexed;
    }

    public void setIsIndexed(Boolean isIndexed) {
        this.isIndexed = isIndexed;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAttrValsId() {
        return attrValsId;
    }

    public void setAttrValsId(String attrValsId) {
        this.attrValsId = attrValsId;
    }

    public Date getAddTime() {
        return addTime;
    }

    public void setAddTime(Date addTime) {
        this.addTime = addTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getDetails() {
        return details;
    }

    public void setDetails(String details) {
        this.details = details;
    }

    public String getBrandId() {
        return brandId;
    }

    public void setBrandId(String brandId) {
        this.brandId = brandId;
    }

    /*public String getCategoryId() {
        return categoryId;
    }

    public void setCategoryId(String categoryId) {
        this.categoryId = categoryId;
    }*/


    public String getDisplayName() {
        return displayName;
    }

    public void setDisplayName(String displayName) {
        this.displayName = displayName;
    }
}
